#pragma once

#include "vector3.h"
#include "quaternion.h"
#include "RigidBody.h"
#include "Ball.h"
#include "Bar.h"
#include "HingeBar.h"

class Collision
{
public:
	Collision(void);
	~Collision(void);

	static void ShiftBall(Ball &b, vector3 q);

	static void BounceHinge(Ball &b, HingeBar h, vector3 q);
	static void ClosestPointToHinge(vector3 p, HingeBar h, vector3 &q);
	static int TestBallHinge(Ball b, HingeBar h, vector3 &q);

	static void BounceBar(Ball &b, Bar r, vector3 q);
	static void ClosestPointToBar(vector3 p, Bar r, vector3 &q);
	static int TestBallBar(Ball b, Bar r, vector3 &q);
};

